#include <iostream>
#include <fstream>
#include <string>
#include <vector>

class VC2005ProjectCreator {
public:
    bool CreateProject() {
        std::string vcproj = 
            "<?xml version=\"1.0\" encoding=\"Windows-1252\"?>\n"
            "<VisualStudioProject\n"
            "\tProjectType=\"Visual C++\"\n"
            "\tVersion=\"8.00\"\n"
            "\tName=\"DevOpsPlatform\"\n"
            "\tProjectGUID=\"{GUID}\"\n"
            "\t>\n"
            "\t<Platforms>\n"
            "\t\t<Platform Name=\"Win32\"/>\n"
            "\t</Platforms>\n"
            "\t<Configurations>\n"
            "\t\t<Configuration\n"
            "\t\t\tName=\"Debug|Win32\"\n"
            "\t\t\tOutputDirectory=\".\\Debug\"\n"
            "\t\t\tIntermediateDirectory=\".\\Debug\"\n"
            "\t\t\tConfigurationType=\"1\"\n"
            "\t\t\tCharacterSet=\"1\"\n"
            "\t\t\t>\n"
            "\t\t\t<Tool\n"
            "\t\t\t\tName=\"VCCLCompilerTool\"\n"
            "\t\t\t\tOptimization=\"0\"\n"
            "\t\t\t\tPreprocessorDefinitions=\"WIN32;_DEBUG;_CONSOLE\"\n"
            "\t\t\t\tMinimalRebuild=\"true\"\n"
            "\t\t\t\tRuntimeLibrary=\"3\"\n"
            "\t\t\t\tWarningLevel=\"3\"\n"
            "\t\t\t\tDebugInformationFormat=\"4\"\n"
            "\t\t\t/>\n"
            "\t\t\t<Tool\n"
            "\t\t\t\tName=\"VCLinkerTool\"\n"
            "\t\t\t\tOutputFile=\"$(OutDir)\\DevOpsPlatform.exe\"\n"
            "\t\t\t\tLinkIncremental=\"2\"\n"
            "\t\t\t\tGenerateDebugInformation=\"true\"\n"
            "\t\t\t/>\n"
            "\t\t</Configuration>\n"
            "\t\t<Configuration\n"
            "\t\t\tName=\"Release|Win32\"\n"
            "\t\t\tOutputDirectory=\".\\Release\"\n"
            "\t\t\tIntermediateDirectory=\".\\Release\"\n"
            "\t\t\tConfigurationType=\"1\"\n"
            "\t\t\tCharacterSet=\"1\"\n"
            "\t\t\tWholeProgramOptimization=\"1\"\n"
            "\t\t\t>\n"
            "\t\t\t<Tool\n"
            "\t\t\t\tName=\"VCCLCompilerTool\"\n"
            "\t\t\t\tPreprocessorDefinitions=\"WIN32;NDEBUG;_CONSOLE\"\n"
            "\t\t\t\tRuntimeLibrary=\"2\"\n"
            "\t\t\t\tWarningLevel=\"3\"\n"
            "\t\t\t/>\n"
            "\t\t\t<Tool\n"
            "\t\t\t\tName=\"VCLinkerTool\"\n"
            "\t\t\t\tOutputFile=\"$(OutDir)\\DevOpsPlatform.exe\"\n"
            "\t\t\t\tLinkIncremental=\"1\"\n"
            "\t\t\t/>\n"
            "\t\t</Configuration>\n"
            "\t</Configurations>\n"
            "\t<Files>\n"
            "\t\t<File RelativePath=\"src\\main.cpp\">\n"
            "\t\t\t<FileConfiguration Name=\"Debug|Win32\">\n"
            "\t\t\t\t<Tool Name=\"VCCLCompilerTool\"/>\n"
            "\t\t\t</FileConfiguration>\n"
            "\t\t\t<FileConfiguration Name=\"Release|Win32\">\n"
            "\t\t\t\t<Tool Name=\"VCCLCompilerTool\"/>\n"
            "\t\t\t</FileConfiguration>\n"
            "\t\t</File>\n"
            "\t</Files>\n"
            "</VisualStudioProject>\n";

        std::ofstream file("DevOpsPlatform.vcproj");
        if (file.is_open()) {
            file << vcproj;
            file.close();
            std::cout << "Created VC++2005 project: DevOpsPlatform.vcproj" << std::endl;
            return true;
        }
        return false;
    }
};

int main() {
    VC2005ProjectCreator creator;
    return creator.CreateProject() ? 0 : 1;
}
